home *** CD-ROM | disk | FTP | other *** search
/ MacTech 1 to 12 / MacTech-vol-1-12.toast / Source / MacTech® Magazine / Volume 05 - 1989 / 05.03 Mar 89 / calc source / CalcData.c next >
Encoding:
C/C++ Source or Header  |  1988-12-09  |  1.7 KB  |  69 lines  |  [TEXT/KAHL]

  1.  
  2. #include <WindowMgr.h>
  3. #include <ListMgr.h>
  4. #include <OSUtil.h>
  5. #include <EventMgr.h>
  6.  
  7. #include "MacCalc.h"
  8. #include "SheetHndlg.h"
  9.  
  10.  
  11. /* Global data */
  12. int quit_flag = FALSE ;
  13.  
  14. /* Grow window limits */
  15. Rect minmax_size ;
  16. /* Current screen size */
  17. Rect curr_screen ;
  18.  
  19. /* do calculation switches */
  20. int automatic_calculation = TRUE ;
  21. int calc_data = FALSE ;
  22. int do_calc_now = FALSE ;
  23.  
  24. /* Current spreadsheet globals */
  25. SHEET_WIN_PTR curr_sheet_ptr ;
  26. SHEET_WIN_HDL calc_hdl ;
  27.  
  28. extern double fsum( ), fabsolute( ), fmodulus( ), fsqrt( ) ;
  29.  
  30. /* Function table */
  31. FUN_ENTRY fun_table[] = {
  32.     /* Standard math functions */
  33.     { "SUM", fsum },
  34.     { "ABS", fabsolute },
  35.     { "MOD", fmodulus },
  36.     { "SQRT", fsqrt },
  37.     { 0 } } ;
  38.     
  39. ARG arg_free_pool[30] = {
  40.     { NULL, FREE_ARG, 0, 0, 0 },
  41.     { NULL, FREE_ARG, 0, 0, 0 },
  42.     { NULL, FREE_ARG, 0, 0, 0 },
  43.     { NULL, FREE_ARG, 0, 0, 0 },
  44.     { NULL, FREE_ARG, 0, 0, 0 },
  45.     { NULL, FREE_ARG, 0, 0, 0 },
  46.     { NULL, FREE_ARG, 0, 0, 0 },
  47.     { NULL, FREE_ARG, 0, 0, 0 },
  48.     { NULL, FREE_ARG, 0, 0, 0 },
  49.     { NULL, FREE_ARG, 0, 0, 0 },
  50.     { NULL, FREE_ARG, 0, 0, 0 },
  51.     { NULL, FREE_ARG, 0, 0, 0 },
  52.     { NULL, FREE_ARG, 0, 0, 0 },
  53.     { NULL, FREE_ARG, 0, 0, 0 },
  54.     { NULL, FREE_ARG, 0, 0, 0 },
  55.     { NULL, FREE_ARG, 0, 0, 0 },
  56.     { NULL, FREE_ARG, 0, 0, 0 },
  57.     { NULL, FREE_ARG, 0, 0, 0 },
  58.     { NULL, FREE_ARG, 0, 0, 0 },
  59.     { NULL, FREE_ARG, 0, 0, 0 },
  60.     { NULL, FREE_ARG, 0, 0, 0 },
  61.     { NULL, FREE_ARG, 0, 0, 0 },
  62.     { NULL, FREE_ARG, 0, 0, 0 },
  63.     { NULL, FREE_ARG, 0, 0, 0 },
  64.     { NULL, FREE_ARG, 0, 0, 0 },
  65.     { NULL, FREE_ARG, 0, 0, 0 },
  66.     { NULL, FREE_ARG, 0, 0, 0 },
  67.     { NULL, FREE_ARG, 0, 0, 0 },
  68.     { NULL, FREE_ARG, 0, 0, 0 },
  69.     { NULL, FREE_ARG, 0, 0, 0 } };